package com.ecoolex.ying.space.ws;

import com.ecoolex.framework.common.pojo.Page;
import com.ecoolex.framework.common.pojo.Pagination;
import com.ecoolex.framework.common.pojo.Sorting;
import com.ecoolex.framework.modularize.api.auth.user.ConsumerMember;
import com.ecoolex.ying.space.entity.UserWatch;
import com.ecoolex.ying.space.pojo.QueryUserWatchDTO;
import com.ecoolex.ying.space.pojo.QueryUserWatchFansDTO;

public interface UserWatchService {


    UserWatch getUserWatchByTwoUserId(Integer userId, Integer watchUserId);

    Pagination<ConsumerMember> queryWatchList(Integer userId, QueryUserWatchDTO query, Sorting[] sorts, Page page);

    Pagination<ConsumerMember> queryFansList(Integer userId, QueryUserWatchFansDTO query, Sorting[] sorts, Page page);

    UserWatch addUserWatch(UserWatch record, String createUser);

    void deleteUserWatch(UserWatch record, String updateUser);
    
    Long watchCount(Integer userId);

    Long FansCount(Integer userId);
}
